//验证文本框控件中是否含有非法字符
function isTextCharValidate(TextControl)
{
     var patrn=/^[^`~!#$%^=|'<>]{0,500}$/;
     if(TextControl.value!="" && TextControl.value!=null)//对空文本框不予验证
        if(!patrn.exec(TextControl.value))
        {
            alert("不能含有非法字符！");
            TextControl.select();
            return false;
        }
     return true;
 }   
 function fTrim(strOld)
{
     return strOld.replace(/(^\s*)|(\s*$)/g, "");
 }
 /************************************************************/
/* 功　能：	用于左填充指定数量的字符,以达到规范长度         */
/* 参 数：desstr  ---- 目标字符                             */
/* 参 数：padchar ---- 填充字符                             */
/* 参 数：lenint  ---- 填充后的字符总长度                   */
/* 返回值：返回字符								            */
/************************************************************/   
function  lpad( desstr, padchar, lenint)
{
  var d,p,t;
  d = String(desstr);
  p = String(padchar);
  var result="";
  for(t=1;t<= lenint-d.length;t++)
      result = p + result;
  return result + d;
}

/************************************************************/
/* 功　能：	用于右填充指定数量的字符,以达到规范长度         */
/* 参 数：desstr  ---- 目标字符                             */
/* 参 数：padchar ---- 填充字符                             */
/* 参 数：lenint  ---- 填充后的字符总长度                   */
/* 返回值：返回字符								            */
/************************************************************/   
function rpad(desstr, padchar, lenint)
{
  var d,p,t;
  d = String(desstr);
  p = String(padchar); 
  var result="";
  for(t=1;t<=lenint-d.length;t++)
      result = p + result;
  
  return  d + result;

}

/************************************************************/
/* 功　能：	检查是否为合法日期(yyyyMMdd)					*/
/* 返回值：	合法		－ true								*/
/*			不合法	    － false							*/
/************************************************************/   
       
function fChkIsDate2(strChk){
    var regexp =/^(((([1-9][0-9]([02468][048])|([13579][26])))(02)(([0][1-9])|([1-2][0-9])))|((([1-9][0-9]([02468][1235679])|([13579][01345789])))(02)(([0][1-9])|([1][0-9])|([2][0-8])))|([1-9]([0-9]{3})((([0](1|3|5|7|8))|(10|12))(([0][1-9])|([1-2][0-9])|30|31)))|(([1-9][0-9]{3})((([0](4|6|9))|11))(([0][1-9])|([1-2][0-9])|30)))(\s(([0-1][0-9])|(2[0-3])):[0-5][0-9]:[0-5][0-9])?$/g;
    return regexp.test(strChk);   
}
/************************************************************/
/* 功　能：	检查是否为合法日期(yyyy-MM-dd)					*/
/* 返回值：	合法		－ true								*/
/*			不合法	    － false							*/
/************************************************************/   
       
function fChkIsDate(strChk){
    var regexp =/^((([0-9][02468]([02468][048])|([13579][26]))|([0-9][13579](([13579][26])|(([02468][48])|([2468][048])))))(-)(2|02)(-)((0{0,1}[1-9])|([12][1-9])))|((\d{4})(-)(02|2)(-)((0{0,1}[1-9]|(1[1-9])|(2[1-8]))))|((\d{4})(-)((0{0,1}[469])|11)(-)(([12][0-9])|(0{0,1}[1-9])|30))|(\d{4}(-)(((0{0,1}[13578])|10|12))(-)(([1|2][0-9])|(0{0,1}[1-9])|(30)|(31)))$/;
    return regexp.test(strChk);
   
}

/************************************************************/
/* 功　能：	检查是否为合法时分秒							*/
/* 返回值：	合法		－ true								*/
/*			不合法	    － false							*/
/************************************************************/   

function fChkIsTime(strChk){
    var regexp =/^(((([1-9][0-9]([02468][048])|([13579][26])))(02)(([0][1-9])|([1-2][0-9])))|((([1-9][0-9]([02468][1235679])|([13579][01345789])))(02)(([0][1-9])|([1][0-9])|([2][0-8])))|([1-9]([0-9]{3})((([0](1|3|5|7|8))|(10|12))(([0][1-9])|([1-2][0-9])|30|31)))|(([1-9][0-9]{3})((([0](4|6|9))|11))(([0][1-9])|([1-2][0-9])|30)))(\s(([0-1][0-9])|(2[0-3])):[0-5][0-9]:[0-5][0-9])?$/g;
 
    return regexp.test(strChk);
   
}
/************************************************************/
/* 功　能：	检查是否为数字(整数)，包括数字0						*/
/* 返回值：	数字		－ true							    */
/*			非数字	－ false								*/
/************************************************************/
function fIsNum1(strChk){
	
	var regexp=/^((0)|([1-9]\d*))$/;
	return regexp.test(strChk);
	
	
}

function fIsFloat1(strChk){
	var regexp=/^[0-9]*\.?[0-9]{0,2}$/;
	return regexp.test(strChk);
}


 
  

/************************************************************/
/* 功　能：	检查是否为数字(整数)，不包括数字0						*/
/* 返回值：	数字		－ true							    */
/*			非数字	－ false								*/
/************************************************************/
function fIsNum2(strChk){
	var regexp=/^(([1-9]\d*))$/;
	return regexp.test(strChk);
}


/************************************************************/
/* 功　能：	检查是否为数字,不包含数字0									*/
/* 返回值：	数字		－ true								*/
/*			非数字	－ false								*/
/************************************************************/
function fIsNum(strChk){
	var strTemp;
	strTemp = fTrim( strChk );
	if( isNaN(strTemp) || strTemp == 0 ) {
		return false;
	} else {
		return true;
	}
}

//'############################################################### 
//'                                                               
//'        机能概要 ：检查是否正确邮件地址                       
//'        作成者   ：
//'        作成日   ：2004/01/06                                    
//'        修正履历 ：                                             
//'                                                               
//'###############################################################
function IsEmail(email) {
	var endvalue,allowstrlist;
	endvalue=true;
	if (email.lastIndexOf("@")==-1 || email.lastIndexOf(".")==-1) {
		endvalue=false;
	}
	if (email.indexOf("@",email.indexOf("@")+1)!=-1 || email.indexOf(".",email.indexOf("@"))==-1) {
		endvalue=false;
	}
	if (email.substr(0,1)=="@" || email.substr(0,1)=="." || email.substr(email.length-1,1)=="@" || email.substr(email.length-1,1)==".") {
		endvalue=false;
	}
	allowstrlist="1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_-.@";
	for (i=0;i<email.length; i++) {
		if (allowstrlist.indexOf(email.substr(i,1))==-1) {
			endvalue=false;
			break;
		}
	}
	return(endvalue);
}

/************************************************************/
/* 功　能：	检查字符串的长度是否超过指定长度					*/
/* 返回值：	超过指定长度		－ true							*/
/*			不超过指定长度	－ false							*/
/************************************************************/
function fChkLen(strChk,inMaxLen){
	var stTemp;
	var inLen;
	var inLenLast;
	var i;
	
	stTemp = fTrim(strChk);
	inLen = stTemp.length;
	
	if(stTemp==""){
		return false;
	}
	inLenLast = 0;
	for( i=0; i<inLen; i++ ) {
		if( stTemp.charCodeAt(i) > 127 ) {
			inLenLast = inLenLast + 2;		// 全角字符
		} else {
			inLenLast = inLenLast + 1;		// 半角字符
		}
	}
	if( inLenLast>inMaxLen ) {
		return true;
	} else {
		return false;
	}
}